<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxCollection Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classPxCollection.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classPxCollection-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">PxCollection Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__common.html">Common</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Collection class for serialization.  
 <a href="classPxCollection.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="PxCollection_8h_source.html">PxCollection.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad201723a5d59909e3a8c7b68204e1d49"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#ad201723a5d59909e3a8c7b68204e1d49">add</a> (<a class="el" href="classPxBase.html">PxBase</a> &amp;object, <a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> id=<a class="el" href="group__common.html#ga70054743832670870a1ce9f619907c77">PX_SERIAL_OBJECT_ID_INVALID</a>)=0</td></tr>
<tr class="memdesc:ad201723a5d59909e3a8c7b68204e1d49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object to the collection.  <a href="#ad201723a5d59909e3a8c7b68204e1d49">More...</a><br /></td></tr>
<tr class="separator:ad201723a5d59909e3a8c7b68204e1d49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a195f984e3dd4d33b09712452b550c382"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a195f984e3dd4d33b09712452b550c382">remove</a> (<a class="el" href="classPxBase.html">PxBase</a> &amp;object)=0</td></tr>
<tr class="memdesc:a195f984e3dd4d33b09712452b550c382"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> member object from the collection.  <a href="#a195f984e3dd4d33b09712452b550c382">More...</a><br /></td></tr>
<tr class="separator:a195f984e3dd4d33b09712452b550c382"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb3a641713d42126264b88fc47cd9fc4"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#acb3a641713d42126264b88fc47cd9fc4">contains</a> (<a class="el" href="classPxBase.html">PxBase</a> &amp;object) const =0</td></tr>
<tr class="memdesc:acb3a641713d42126264b88fc47cd9fc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the collection contains a certain <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object.  <a href="#acb3a641713d42126264b88fc47cd9fc4">More...</a><br /></td></tr>
<tr class="separator:acb3a641713d42126264b88fc47cd9fc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad53f79454edff13a2a2d648ad6b21492"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#ad53f79454edff13a2a2d648ad6b21492">addId</a> (<a class="el" href="classPxBase.html">PxBase</a> &amp;object, <a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> id)=0</td></tr>
<tr class="memdesc:ad53f79454edff13a2a2d648ad6b21492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds an id to a member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object.  <a href="#ad53f79454edff13a2a2d648ad6b21492">More...</a><br /></td></tr>
<tr class="separator:ad53f79454edff13a2a2d648ad6b21492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed9ec331226d0aa2156efa6bec0e3ecb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#aed9ec331226d0aa2156efa6bec0e3ecb">removeId</a> (<a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> id)=0</td></tr>
<tr class="memdesc:aed9ec331226d0aa2156efa6bec0e3ecb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes id from a contained <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object.  <a href="#aed9ec331226d0aa2156efa6bec0e3ecb">More...</a><br /></td></tr>
<tr class="separator:aed9ec331226d0aa2156efa6bec0e3ecb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef86f7f33db62840e237e6881363501b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#aef86f7f33db62840e237e6881363501b">add</a> (<a class="el" href="classPxCollection.html">PxCollection</a> &amp;collection)=0</td></tr>
<tr class="memdesc:aef86f7f33db62840e237e6881363501b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds all <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects and their ids of collection to this collection.  <a href="#aef86f7f33db62840e237e6881363501b">More...</a><br /></td></tr>
<tr class="separator:aef86f7f33db62840e237e6881363501b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab06fbb729d1b88190672da888e330a34"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#ab06fbb729d1b88190672da888e330a34">remove</a> (<a class="el" href="classPxCollection.html">PxCollection</a> &amp;collection)=0</td></tr>
<tr class="memdesc:ab06fbb729d1b88190672da888e330a34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes all <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects of collection from this collection.  <a href="#ab06fbb729d1b88190672da888e330a34">More...</a><br /></td></tr>
<tr class="separator:ab06fbb729d1b88190672da888e330a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5642c14ef12fe69f887f829e47e133a1"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a5642c14ef12fe69f887f829e47e133a1">getNbObjects</a> () const =0</td></tr>
<tr class="memdesc:a5642c14ef12fe69f887f829e47e133a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets number of <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects in this collection.  <a href="#a5642c14ef12fe69f887f829e47e133a1">More...</a><br /></td></tr>
<tr class="separator:a5642c14ef12fe69f887f829e47e133a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeed5696e38989d4c4bd0293c45f625e9"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#aeed5696e38989d4c4bd0293c45f625e9">getObject</a> (<a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> index) const =0</td></tr>
<tr class="memdesc:aeed5696e38989d4c4bd0293c45f625e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object of this collection given its index.  <a href="#aeed5696e38989d4c4bd0293c45f625e9">More...</a><br /></td></tr>
<tr class="separator:aeed5696e38989d4c4bd0293c45f625e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af245a69b1af2a7c50bbf79bbfab5e516"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#af245a69b1af2a7c50bbf79bbfab5e516">getObjects</a> (<a class="el" href="classPxBase.html">PxBase</a> **userBuffer, <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> bufferSize, <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> startIndex=0) const =0</td></tr>
<tr class="memdesc:af245a69b1af2a7c50bbf79bbfab5e516"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copies member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> pointers to a user specified buffer.  <a href="#af245a69b1af2a7c50bbf79bbfab5e516">More...</a><br /></td></tr>
<tr class="separator:af245a69b1af2a7c50bbf79bbfab5e516"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ed25e50544a1ef14870fb7bfc1187ed"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classPxBase.html">PxBase</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a9ed25e50544a1ef14870fb7bfc1187ed">find</a> (<a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> id) const =0</td></tr>
<tr class="memdesc:a9ed25e50544a1ef14870fb7bfc1187ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Looks for a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object given a PxSerialObjectId value.  <a href="#a9ed25e50544a1ef14870fb7bfc1187ed">More...</a><br /></td></tr>
<tr class="separator:a9ed25e50544a1ef14870fb7bfc1187ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a082b4d10a5cc5c1fafb9f94f59f0923f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a082b4d10a5cc5c1fafb9f94f59f0923f">getNbIds</a> () const =0</td></tr>
<tr class="memdesc:a082b4d10a5cc5c1fafb9f94f59f0923f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets number of PxSerialObjectId names in this collection.  <a href="#a082b4d10a5cc5c1fafb9f94f59f0923f">More...</a><br /></td></tr>
<tr class="separator:a082b4d10a5cc5c1fafb9f94f59f0923f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd8ba2bfe77bae84d578ff9335f342fd"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#acd8ba2bfe77bae84d578ff9335f342fd">getIds</a> (<a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> *userBuffer, <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> bufferSize, <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> startIndex=0) const =0</td></tr>
<tr class="memdesc:acd8ba2bfe77bae84d578ff9335f342fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copies member PxSerialObjectId values to a user specified buffer.  <a href="#acd8ba2bfe77bae84d578ff9335f342fd">More...</a><br /></td></tr>
<tr class="separator:acd8ba2bfe77bae84d578ff9335f342fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa59a87c2ed2a69552f43c83dcbc3c6e2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#aa59a87c2ed2a69552f43c83dcbc3c6e2">getId</a> (const <a class="el" href="classPxBase.html">PxBase</a> &amp;object) const =0</td></tr>
<tr class="memdesc:aa59a87c2ed2a69552f43c83dcbc3c6e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the PxSerialObjectId name of a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object within the collection.  <a href="#aa59a87c2ed2a69552f43c83dcbc3c6e2">More...</a><br /></td></tr>
<tr class="separator:aa59a87c2ed2a69552f43c83dcbc3c6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebf358855b8e054c907f49f85288a68d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#aebf358855b8e054c907f49f85288a68d">release</a> ()=0</td></tr>
<tr class="memdesc:aebf358855b8e054c907f49f85288a68d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes a collection object.  <a href="#aebf358855b8e054c907f49f85288a68d">More...</a><br /></td></tr>
<tr class="separator:aebf358855b8e054c907f49f85288a68d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a3cf81c15b4dcd6e16f56c1d0bc383ba3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a3cf81c15b4dcd6e16f56c1d0bc383ba3">PxCollection</a> ()</td></tr>
<tr class="separator:a3cf81c15b4dcd6e16f56c1d0bc383ba3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d6a12201cf8a03da20c74c1c1cb548c"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxCollection.html#a3d6a12201cf8a03da20c74c1c1cb548c">~PxCollection</a> ()</td></tr>
<tr class="separator:a3d6a12201cf8a03da20c74c1c1cb548c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Collection class for serialization. </p>
<p>A collection is a set of <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects. <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects can be added to the collection regardless of other objects they depend on. Objects may be named using PxSerialObjectId values in order to resolve dependencies between objects of different collections.</p>
<p>Serialization and deserialization only work through collections.</p>
<p>A scene is typically serialized using the following steps:</p>
<ol type="1">
<li>create a serialization registry</li>
<li>create a collection for scene objects</li>
<li>complete the scene objects (adds all dependent objects, e.g. meshes)</li>
<li>serialize collection</li>
<li>release collection</li>
<li>release serialization registry</li>
</ol>
<p>For example the code may look like this:</p>
<div class="fragment"><div class="line"><a class="code" href="classPxPhysics.html">PxPhysics</a>* physics; <span class="comment">// The physics</span></div><div class="line"><a class="code" href="classPxScene.html">PxScene</a>* scene;     <span class="comment">// The physics scene</span></div><div class="line">SerialStream s;     <span class="comment">// The user-defined stream doing the actual write to disk</span></div><div class="line"></div><div class="line"><a class="code" href="classPxSerializationRegistry.html">PxSerializationRegistry</a>* registry = <a class="code" href="classPxSerialization.html#a33d7707fb8d82862773a6b9ae1d4782e">PxSerialization::createSerializationRegistry</a>(*physics); <span class="comment">// step 1)</span></div><div class="line"><a class="code" href="classPxCollection.html">PxCollection</a>* collection = PxSerialization::createCollection(*scene);                       <span class="comment">// step 2)</span></div><div class="line"><a class="code" href="classPxSerialization.html#a0cf59eda36c56e9e66bac0c2b5168094">PxSerialization::complete</a>(*collection, *registry);                                          <span class="comment">// step 3)</span></div><div class="line"><a class="code" href="classPxSerialization.html#a1d6242bea0c7513bfbfb24670e5cfb03">PxSerialization::serializeCollectionToBinary</a>(s, *collection, *registry);                    <span class="comment">// step 4)</span></div><div class="line">collection-&gt;<a class="code" href="classPxCollection.html#aebf358855b8e054c907f49f85288a68d">release</a>();                                                                      <span class="comment">// step 5)</span></div><div class="line">registry-&gt;<a class="code" href="classPxSerializationRegistry.html#a1d9214872d09d3c148e2ff721971acb8">release</a>();                                                                        <span class="comment">// step 6)</span></div></div><!-- fragment --><p>A scene is typically deserialized using the following steps:</p>
<ol type="1">
<li>load a serialized collection into memory</li>
<li>create a serialization registry</li>
<li>create a collection by passing the serialized memory block</li>
<li>add collected objects to scene</li>
<li>release collection</li>
<li>release serialization registry</li>
</ol>
<p>For example the code may look like this:</p>
<div class="fragment"><div class="line"><a class="code" href="classPxPhysics.html">PxPhysics</a>* physics; <span class="comment">// The physics</span></div><div class="line"><a class="code" href="classPxScene.html">PxScene</a>* scene;     <span class="comment">// The physics scene</span></div><div class="line"><span class="keywordtype">void</span>* memory128;    <span class="comment">// a 128-byte aligned buffer previously loaded from disk by the user    - step 1)</span></div><div class="line"></div><div class="line"><a class="code" href="classPxSerializationRegistry.html">PxSerializationRegistry</a>* registry = <a class="code" href="classPxSerialization.html#a33d7707fb8d82862773a6b9ae1d4782e">PxSerialization::createSerializationRegistry</a>(*physics);     <span class="comment">// step 2)</span></div><div class="line"><a class="code" href="classPxCollection.html">PxCollection</a>* collection = <a class="code" href="classPxSerialization.html#a6c64dc9a55f7ae9ffc8c1802855134ed">PxSerialization::createCollectionFromBinary</a>(memory128, *registry);   <span class="comment">// step 3)</span></div><div class="line">scene-&gt;<a class="code" href="classPxScene.html#a6b61683d8acb5e73b2ffb41ebecae589">addCollection</a>(*collection);                                                              <span class="comment">// step 4)</span></div><div class="line">collection-&gt;<a class="code" href="classPxCollection.html#aebf358855b8e054c907f49f85288a68d">release</a>();                                                                          <span class="comment">// step 5)</span></div><div class="line">registry-&gt;<a class="code" href="classPxSerializationRegistry.html#a1d9214872d09d3c148e2ff721971acb8">release</a>();                                                                            <span class="comment">// step 6)</span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a>, <a class="el" href="group__common.html#gaa3979f24ebe59e173e262c7155b1a489" title="Creates a collection object. ">PxCreateCollection()</a> </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a3cf81c15b4dcd6e16f56c1d0bc383ba3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cf81c15b4dcd6e16f56c1d0bc383ba3">&#9670;&nbsp;</a></span>PxCollection()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">PxCollection::PxCollection </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a3d6a12201cf8a03da20c74c1c1cb548c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d6a12201cf8a03da20c74c1c1cb548c">&#9670;&nbsp;</a></span>~PxCollection()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual PxCollection::~PxCollection </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad201723a5d59909e3a8c7b68204e1d49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad201723a5d59909e3a8c7b68204e1d49">&#9670;&nbsp;</a></span>add() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a>&#160;</td>
          <td class="paramname"><em>id</em> = <code><a class="el" href="group__common.html#ga70054743832670870a1ce9f619907c77">PX_SERIAL_OBJECT_ID_INVALID</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object to the collection. </p>
<p>Adds a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object to the collection. Optionally a PxSerialObjectId can be provided in order to resolve dependencies between collections. A PxSerialObjectId value of PX_SERIAL_OBJECT_ID_INVALID means the object remains without id. Objects can be added regardless of other objects they require. If the object is already in the collection, the ID will be set if it was PX_SERIAL_OBJECT_ID_INVALID previously, otherwise the operation fails.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>Object to be added to the collection </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>Optional PxSerialObjectId id </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aef86f7f33db62840e237e6881363501b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef86f7f33db62840e237e6881363501b">&#9670;&nbsp;</a></span>add() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::add </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxCollection.html">PxCollection</a> &amp;&#160;</td>
          <td class="paramname"><em>collection</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds all <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects and their ids of collection to this collection. </p>
<p><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects already in this collection are ignored. Object ids need to be conflict free, i.e. the same object may not have two different ids within the two collections.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">collection</td><td>Collection to be added </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ad53f79454edff13a2a2d648ad6b21492"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad53f79454edff13a2a2d648ad6b21492">&#9670;&nbsp;</a></span>addId()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::addId </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a>&#160;</td>
          <td class="paramname"><em>id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds an id to a member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object. </p>
<p>If the object is already associated with an id within the collection, the id is replaced. May only be called for objects that are members of the collection. The id needs to be unique within the collection.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>Member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>PxSerialObjectId id to be given to the object </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="acb3a641713d42126264b88fc47cd9fc4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb3a641713d42126264b88fc47cd9fc4">&#9670;&nbsp;</a></span>contains()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool PxCollection::contains </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns whether the collection contains a certain <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Whether object is contained. </dd></dl>

</div>
</div>
<a id="a9ed25e50544a1ef14870fb7bfc1187ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ed25e50544a1ef14870fb7bfc1187ed">&#9670;&nbsp;</a></span>find()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classPxBase.html">PxBase</a>* PxCollection::find </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Looks for a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object given a PxSerialObjectId value. </p>
<p>If there is no <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object in the collection with the given id, NULL is returned.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>PxSerialObjectId value to look for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object with the given id value or NULL </dd></dl>

</div>
</div>
<a id="aa59a87c2ed2a69552f43c83dcbc3c6e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa59a87c2ed2a69552f43c83dcbc3c6e2">&#9670;&nbsp;</a></span>getId()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> PxCollection::getId </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the PxSerialObjectId name of a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object within the collection. </p>
<p>The <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object needs to be a member of the collection.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object to get id for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>PxSerialObjectId name of the object or PX_SERIAL_OBJECT_ID_INVALID if the object is unnamed </dd></dl>

</div>
</div>
<a id="acd8ba2bfe77bae84d578ff9335f342fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd8ba2bfe77bae84d578ff9335f342fd">&#9670;&nbsp;</a></span>getIds()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> PxCollection::getIds </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a> *&#160;</td>
          <td class="paramname"><em>userBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td>
          <td class="paramname"><em>bufferSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td>
          <td class="paramname"><em>startIndex</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copies member PxSerialObjectId values to a user specified buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">userBuffer</td><td>Array of PxSerialObjectId values </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bufferSize</td><td>Capacity of userBuffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">startIndex</td><td>Offset into list of member PxSerialObjectId values </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>number of members PxSerialObjectId values that have been written to the userBuffer </dd></dl>

</div>
</div>
<a id="a082b4d10a5cc5c1fafb9f94f59f0923f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a082b4d10a5cc5c1fafb9f94f59f0923f">&#9670;&nbsp;</a></span>getNbIds()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> PxCollection::getNbIds </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets number of PxSerialObjectId names in this collection. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of PxSerialObjectId names in this collection </dd></dl>

</div>
</div>
<a id="a5642c14ef12fe69f887f829e47e133a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5642c14ef12fe69f887f829e47e133a1">&#9670;&nbsp;</a></span>getNbObjects()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> PxCollection::getNbObjects </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets number of <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects in this collection. </p>
<dl class="section return"><dt>Returns</dt><dd>Number of objects in this collection </dd></dl>

</div>
</div>
<a id="aeed5696e38989d4c4bd0293c45f625e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeed5696e38989d4c4bd0293c45f625e9">&#9670;&nbsp;</a></span>getObject()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classPxBase.html">PxBase</a>&amp; PxCollection::getObject </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td>
          <td class="paramname"><em>index</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object of this collection given its index. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">index</td><td><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> index in [0, <a class="el" href="classPxCollection.html#a5642c14ef12fe69f887f829e47e133a1" title="Gets number of PxBase objects in this collection. ">getNbObjects()</a>) </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object at index index </dd></dl>

</div>
</div>
<a id="af245a69b1af2a7c50bbf79bbfab5e516"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af245a69b1af2a7c50bbf79bbfab5e516">&#9670;&nbsp;</a></span>getObjects()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a> PxCollection::getObjects </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxBase.html">PxBase</a> **&#160;</td>
          <td class="paramname"><em>userBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td>
          <td class="paramname"><em>bufferSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__foundation.html#gacce5749db3dcfb916e98c253374264ed">PxU32</a>&#160;</td>
          <td class="paramname"><em>startIndex</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copies member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> pointers to a user specified buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">userBuffer</td><td>Array of <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> pointers </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bufferSize</td><td>Capacity of userBuffer </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">startIndex</td><td>Offset into list of member <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>number of members <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects that have been written to the userBuffer </dd></dl>

</div>
</div>
<a id="aebf358855b8e054c907f49f85288a68d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebf358855b8e054c907f49f85288a68d">&#9670;&nbsp;</a></span>release()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::release </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Deletes a collection object. </p>
<p>This function only deletes the collection object, i.e. the container class. It doesn't delete objects that are part of the collection.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__common.html#gaa3979f24ebe59e173e262c7155b1a489" title="Creates a collection object. ">PxCreateCollection()</a> </dd></dl>

</div>
</div>
<a id="a195f984e3dd4d33b09712452b550c382"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a195f984e3dd4d33b09712452b550c382">&#9670;&nbsp;</a></span>remove() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxBase.html">PxBase</a> &amp;&#160;</td>
          <td class="paramname"><em>object</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes a <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> member object from the collection. </p>
<p>Object needs to be contained by the collection.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object to be removed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ab06fbb729d1b88190672da888e330a34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab06fbb729d1b88190672da888e330a34">&#9670;&nbsp;</a></span>remove() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::remove </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPxCollection.html">PxCollection</a> &amp;&#160;</td>
          <td class="paramname"><em>collection</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes all <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects of collection from this collection. </p>
<p><a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> objects not present in this collection are ignored. Ids of objects which are removed are also removed.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">collection</td><td>Collection to be removed </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="aed9ec331226d0aa2156efa6bec0e3ecb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed9ec331226d0aa2156efa6bec0e3ecb">&#9670;&nbsp;</a></span>removeId()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void PxCollection::removeId </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__common.html#gab2ccfb663643cd2d66b59908189d88cd">PxSerialObjectId</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Removes id from a contained <a class="el" href="classPxBase.html" title="Base class for objects that can be members of a PxCollection. ">PxBase</a> object. </p>
<p>May only be called for ids that are associated with an object in the collection.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">id</td><td>PxSerialObjectId value </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="PxCollection_8h_source.html">PxCollection.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classPxCollection.html">PxCollection</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
